package org.jsola.hr.web;

import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.jsola.approval.dto.UserApproAddDTO;
import org.jsola.approval.entity.ApproFlowNode;
import org.jsola.core.Result;

import java.util.List;

/**
 * @author zhenghua
 */
public interface IUserApproControllerAPI {


    /**
     * 用户发起审批
     *
     * @param userApproAddDTO 用户审批实体
     * @return 用户审批实体
     */
    @ApiOperation(value = "根据用户填写的信息获取匹配的流程(展示和用户自选审批人、抄送人使用)")
    @ApiImplicitParams({
            @ApiImplicitParam(name = "用户审批实体", value = "userApproDTO", required = true, dataType = "UserApproDTO", paramType = "body")
    })
    Result<List<ApproFlowNode>> getFlowProcessByApproInfo(UserApproAddDTO userApproAddDTO);

}
